#include "spi_mem_chip_i.h"
const SPIMemChip SPIMemChips[] = {
    {0x1F, 0x40, 0x00, "AT25DN256", 32768, 256, SPIMemChipVendorADESTO, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x20, "A25L05PT", 65536, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x10, "A25L05PU", 65536, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x21, "A25L10PT", 131072, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x11, "A25L10PU", 131072, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x22, "A25L20PT", 262144, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x12, "A25L20PU", 262144, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x23, "A25L40PT", 524288, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x13, "A25L40PU", 524288, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x24, "A25L80PT", 1048576, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x14, "A25L80PU", 1048576, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x25, "A25L16PT", 2097152, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x15, "A25L16PU", 2097152, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x10, "A25L512", 65536, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x11, "A25L010", 131072, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x12, "A25L020", 262144, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x13, "A25L040", 524288, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x14, "A25L080", 1048576, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x15, "A25L016", 2097152, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x16, "A25L032", 4194304, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x40, 0x15, "A25LQ16", 2097152, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x37, 0x40, 0x16, "A25LQ32A", 4194304, 256, SPIMemChipVendorAMIC, SPIMemChipWriteModePage},
    {0x68, 0x40, 0x14, "BY25D80", 1048576, 256, SPIMemChipVendorBoya, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x10, "EN25B05", 65536, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x10, "EN25B05T", 65536, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x11, "EN25B10", 131072, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x11, "EN25B10T", 131072, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x12, "EN25B20", 262144, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x12, "EN25B20T", 262144, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x13, "EN25B40", 524288, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x13, "EN25B40T", 524288, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x14, "EN25B80", 1048576, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x14, "EN25B80T", 1048576, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x15, "EN25B16", 2097152, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x15, "EN25B16T", 2097152, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x16, "EN25B32", 4194304, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x16, "EN25B32T", 4194304, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x17, "EN25B64", 8388608, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x17, "EN25B64T", 8388608, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x10, "EN25F05", 65536, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x11, "EN25F10", 131072, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x12, "EN25F20", 262144, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x13, "EN25F40", 524288, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x14, "EN25F80", 1048576, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x15, "EN25F16", 2097152, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x16, "EN25F32", 4194304, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x10, "EN25LF05", 65536, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x11, "EN25LF10", 131072, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x12, "EN25LF20", 262144, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x13, "EN25LF40", 524288, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x10, "EN25P05", 65536, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x11, "EN25P10", 131072, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x12, "EN25P20", 262144, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x13, "EN25P40", 524288, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x14, "EN25P80", 1048576, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x15, "EN25P16", 2097152, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x16, "EN25P32", 4194304, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x17, "EN25P64", 8388608, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x30, 0x13, "EN25Q40", 524288, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x30, 0x14, "EN25Q80A", 1048576, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x30, 0x15, "EN25Q16A", 2097152, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x30, 0x16, "EN25Q32A", 4194304, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x70, 0x16, "EN25Q32A", 4194304, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x30, 0x16, "EN25Q32B", 4194304, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x30, 0x17, "EN25Q64", 8388608, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x30, 0x18, "EN25Q128", 16777216, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x70, 0x15, "EN25QH16", 2097152, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x70, 0x16, "EN25QH32", 4194304, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x70, 0x17, "EN25QH64", 8388608, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x70, 0x18, "EN25QH128", 16777216, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x70, 0x19, "EN25QH256", 33554432, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x51, 0x14, "EN25T80", 1048576, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x51, 0x15, "EN25T16", 2097152, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x1C, 0x31, 0x17, "EN25F64", 8388608, 256, SPIMemChipVendorEON, SPIMemChipWriteModePage},
    {0x7F, 0x9D, 0x7C, "Pm25LV010", 131072, 256, SPIMemChipVendorPFLASH, SPIMemChipWriteModePage},
    {0x7F, 0x9D, 0x21, "Pm25LD010", 131072, 256, SPIMemChipVendorPFLASH, SPIMemChipWriteModePage},
    {0x7F, 0x9D, 0x22, "Pm25LV020", 262144, 256, SPIMemChipVendorPFLASH, SPIMemChipWriteModePage},
    {0x7F, 0x9D, 0x7D, "Pm25W020", 262144, 256, SPIMemChipVendorPFLASH, SPIMemChipWriteModePage},
    {0x7F, 0x9D, 0x7E, "Pm25LV040", 524288, 256, SPIMemChipVendorPFLASH, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x10, "TS25L512A", 65536, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x11, "TS25L010A", 131072, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x12, "TS25L020A", 262144, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x15, "TS25L16AP", 2097152, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x15, "TS25L16BP", 2097152, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x15, "ZP25L16P", 2097152, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x20, 0x80, 0x15, "TS25L16PE", 2097152, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x20, 0x80, 0x14, "TS25L80PE", 1048576, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x16, "TS25L032A", 4194304, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x13, "TS25L40P", 524288, 256, SPIMemChipVendorTERRA, SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x10,
     "GPR25L005E",
     65536,
     256,
     SPIMemChipVendorGeneralplus,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x15,
     "GPR25L161B",
     262144,
     256,
     SPIMemChipVendorGeneralplus,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x12,
     "GPR25L020B",
     262144,
     256,
     SPIMemChipVendorGeneralplus,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "GPR25L3203F",
     4194304,
     256,
     SPIMemChipVendorGeneralplus,
     SPIMemChipWriteModePage},
    {0x9D, 0x7B, 0x00, "AC25LV512", 65536, 256, SPIMemChipVendorDEUTRON, SPIMemChipWriteModePage},
    {0x9D, 0x7C, 0x00, "AC25LV010", 131072, 256, SPIMemChipVendorDEUTRON, SPIMemChipWriteModePage},
    {0x9D, 0x7B, 0x00, "EM25LV512", 65536, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x9D, 0x7C, 0x00, "EM25LV010", 131072, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x20, 0x13, "F25L004A", 524288, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x20, 0x14, "F25L008A", 1048576, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x20, 0x15, "F25L016A", 2097152, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x8C, 0x8C, "F25L04UA", 524288, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x20, 0x13, "F25L04P", 524288, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x30, 0x13, "F25S04P", 524288, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x20, 0x14, "F25L08P", 1048576, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x20, 0x15, "F25L16P", 2097152, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x20, 0x16, "F25L32P", 4194304, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x8C, 0x40, 0x16, "F25L32Q", 4194304, 256, SPIMemChipVendorEFST, SPIMemChipWriteModePage},
    {0x4A, 0x20, 0x11, "ES25P10", 131072, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0x4A, 0x20, 0x12, "ES25P20", 262144, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0x4A, 0x20, 0x13, "ES25P40", 524288, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0x4A, 0x20, 0x14, "ES25P80", 1048576, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0x4A, 0x20, 0x15, "ES25P16", 2097152, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0x4A, 0x20, 0x16, "ES25P32", 4194304, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0x4A, 0x32, 0x13, "ES25M40A", 524288, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0x4A, 0x32, 0x14, "ES25M80A", 1048576, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0x4A, 0x32, 0x15, "ES25M16A", 2097152, 256, SPIMemChipVendorEXCELSEMI, SPIMemChipWriteModePage},
    {0xF8, 0x32, 0x14, "FM25Q08A", 1048576, 256, SPIMemChipVendorFIDELIX, SPIMemChipWriteModePage},
    {0xF8, 0x32, 0x15, "FM25Q16A", 2097152, 256, SPIMemChipVendorFIDELIX, SPIMemChipWriteModePage},
    {0xF8, 0x32, 0x15, "FM25Q16B", 2097152, 256, SPIMemChipVendorFIDELIX, SPIMemChipWriteModePage},
    {0xF8, 0x32, 0x16, "FM25Q32A", 4194304, 256, SPIMemChipVendorFIDELIX, SPIMemChipWriteModePage},
    {0xF8, 0x32, 0x17, "FM25Q64A", 8388608, 256, SPIMemChipVendorFIDELIX, SPIMemChipWriteModePage},
    {0xC8, 0x30, 0x13, "GD25D40", 524288, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8, 0x30, 0x14, "GD25D80", 1048576, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8, 0x20, 0x13, "GD25F40", 524288, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8, 0x20, 0x14, "GD25F80", 1048576, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8, 0x40, 0x10, "GD25Q512", 65536, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8, 0x40, 0x11, "GD25Q10", 131072, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8, 0x40, 0x12, "GD25Q20", 262144, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8,
     0x60,
     0x12,
     "GD25LQ20C_1.8V",
     262144,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8, 0x40, 0x13, "GD25Q40", 524288, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8, 0x40, 0x14, "GD25Q80", 1048576, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8,
     0x40,
     0x14,
     "GD25Q80B",
     1048576,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8,
     0x40,
     0x14,
     "GD25Q80C",
     1048576,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8, 0x40, 0x15, "GD25Q16", 2097152, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8,
     0x40,
     0x15,
     "GD25Q16B",
     2097152,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8, 0x40, 0x16, "GD25Q32", 4194304, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8,
     0x40,
     0x16,
     "GD25Q32B",
     4194304,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8, 0x40, 0x17, "GD25Q64", 8388608, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0xC8,
     0x40,
     0x17,
     "GD25Q64B",
     8388608,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8,
     0x40,
     0x17,
     "GD25B64C",
     8388608,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8,
     0x40,
     0x18,
     "GD25Q128B",
     16777216,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8,
     0x40,
     0x18,
     "GD25Q128C",
     16777216,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8,
     0x60,
     0x17,
     "GD25LQ064C_1.8V",
     8388608,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8,
     0x60,
     0x18,
     "GD25LQ128C_1.8V",
     16777216,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8,
     0x60,
     0x19,
     "GD25LQ256C_1.8V",
     33554432,
     256,
     SPIMemChipVendorGIGADEVICE,
     SPIMemChipWriteModePage},
    {0xC8, 0x31, 0x14, "MD25T80", 1048576, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0x51, 0x40, 0x12, "MD25D20", 262144, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0x51, 0x40, 0x13, "MD25D40", 524288, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0x51, 0x40, 0x14, "MD25D80", 1048576, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0x51, 0x40, 0x15, "MD25D16", 2097152, 256, SPIMemChipVendorGIGADEVICE, SPIMemChipWriteModePage},
    {0x1C, 0x20, 0x10, "ICE25P05", 65536, 128, SPIMemChipVendorICE, SPIMemChipWriteModePage},
    {0x89, 0x89, 0x11, "QB25F016S33B", 2097152, 256, SPIMemChipVendorINTEL, SPIMemChipWriteModePage},
    {0x89, 0x89, 0x11, "QB25F160S33B", 2097152, 256, SPIMemChipVendorINTEL, SPIMemChipWriteModePage},
    {0x89, 0x89, 0x12, "QB25F320S33B", 4194304, 256, SPIMemChipVendorINTEL, SPIMemChipWriteModePage},
    {0x89, 0x89, 0x13, "QB25F640S33B", 8388608, 256, SPIMemChipVendorINTEL, SPIMemChipWriteModePage},
    {0x89, 0x89, 0x11, "QH25F016S33B", 2097152, 256, SPIMemChipVendorINTEL, SPIMemChipWriteModePage},
    {0x89, 0x89, 0x11, "QH25F160S33B", 2097152, 256, SPIMemChipVendorINTEL, SPIMemChipWriteModePage},
    {0x89, 0x89, 0x12, "QH25F320S33B", 4194304, 256, SPIMemChipVendorINTEL, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "KH25L1005", 131072, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "KH25L1005A", 131072, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x12, "KH25L2005", 262144, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "KH25L4005", 524288, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "KH25L4005A", 524288, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x10, "KH25L512", 65536, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x10, "KH25L512A", 65536, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x14, "KH25L8005", 1048576, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x26, 0x15, "KH25L8036D", 1048576, 256, SPIMemChipVendorKHIC, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "MX25L1005", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "MX25L1005A", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "MX25L1005C", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "MX25L1006E", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x22, 0x11, "MX25L1021E", 131072, 32, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "MX25L1025C", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "MX25L1026E", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12805D",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12835E",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12835F",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12836E",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12839F",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12845E",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12845G",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12845F",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12865E",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12865F",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12873F",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x18,
     "MX25L12875F",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x19,
     "MX25L25635E",
     33554432,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x15, "MX25L1605", 2097152, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x15,
     "MX25L1605A",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x15,
     "MX25L1605D",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x15,
     "MX25L1606E",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x24,
     0x15,
     "MX25L1633E",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x24,
     0x15,
     "MX25L1635D",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x15,
     "MX25L1635E",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x24,
     0x15,
     "MX25L1636D",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x15,
     "MX25L1636E",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x24,
     0x15,
     "MX25L1673E",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x24,
     0x15,
     "MX25L1675E",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x12, "MX25L2005", 262144, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x12, "MX25L2005C", 262144, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x12, "MX25L2006E", 262144, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x12, "MX25L2026C", 262144, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x12, "MX25L2026E", 262144, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x16, "MX25L3205", 4194304, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3205A",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3205D",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3206E",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3208E",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x5E,
     0x16,
     "MX25L3225D",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3233F",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x5E,
     0x16,
     "MX25L3235D",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3235E",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x5E,
     0x16,
     "MX25L3236D",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x5E,
     0x16,
     "MX25L3237D",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x36,
     "MX25L3239E",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3273E",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3273F",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x16,
     "MX25L3275E",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "MX25L4005", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "MX25L4005A", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "MX25L4005C", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "MX25L4006E", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "MX25L4026E", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x10, "MX25L512", 65536, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x10, "MX25L512A", 65536, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x10, "MX25L512C", 65536, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x22, 0x10, "MX25L5121E", 65536, 32, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x17, "MX25L6405", 8388608, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6405D",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6406E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6408E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6433F",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6435E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6436E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6436F",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x37,
     "MX25L6439E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6445E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6465E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6473E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6473F",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x17,
     "MX25L6475E",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x14, "MX25L8005", 1048576, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x14,
     "MX25L8006E",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x14,
     "MX25L8008E",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x14,
     "MX25L8035E",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x14,
     "MX25L8036E",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x14,
     "MX25L8073E",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x14,
     "MX25L8075E",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x19,
     "MX25L25673G",
     33554432,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x28, 0x10, "MX25R512F", 65536, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x28, 0x11, "MX25R1035F", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x28,
     0x15,
     "MX25R1635F",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x28, 0x12, "MX25R2035F", 262144, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x28,
     0x16,
     "MX25R3235F",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x28, 0x13, "MX25R4035F", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x28,
     0x17,
     "MX25R6435F",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x28,
     0x14,
     "MX25R8035F",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x31,
     "MX25U1001E_1.8V",
     131072,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x18,
     "MX25U12835F_1.8V",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x39,
     "MX25U25673G_1.8V",
     33554432,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x39,
     "MX25U25645G_1.8V",
     33554432,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x35,
     "MX25U1635E_1.8V",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x35,
     "MX25U1635F_1.8V",
     2097152,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x32,
     "MX25U2032E_1.8V",
     262144,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x32,
     "MX25U2033E_1.8V",
     262144,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x36,
     "MX25U3235E_1.8V",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x36,
     "MX25U3235F_1.8V",
     4194304,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x33,
     "MX25U4032E_1.8V",
     524288,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x33,
     "MX25U4033E_1.8V",
     524288,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x33,
     "MX25U4035_1.8V",
     524288,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x30,
     "MX25U5121E_1.8V",
     65536,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x37,
     "MX25U6435F_1.8V",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x37,
     "MX25U6473F_1.8V",
     8388608,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x34,
     "MX25U8032E_1.8V",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x34,
     "MX25U8033E_1.8V",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x34,
     "MX25U8035_1.8V",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x34,
     "MX25U8035E_1.8V",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x38,
     "MX25U12873F_1.8V",
     16777216,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x11, "MX25V1006E", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x23, 0x11, "MX25V1035F", 131072, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x12, "MX25V2006E", 262144, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x23, 0x12, "MX25V2035F", 262144, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x10, "MX25V512", 65536, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x10, "MX25V512C", 65536, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x10, "MX25V512E", 65536, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x23, 0x10, "MX25V512F", 65536, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "MX25V4005", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x13, "MX25V4006E", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x25, 0x53, "MX25V4035", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x23, 0x13, "MX25V4035F", 524288, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2, 0x20, 0x14, "MX25V8005", 1048576, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x20,
     0x14,
     "MX25V8006E",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2, 0x25, 0x54, "MX25V8035", 1048576, 256, SPIMemChipVendorMACRONIX, SPIMemChipWriteModePage},
    {0xC2,
     0x23,
     0x14,
     "MX25V8035F",
     1048576,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x3A,
     "MX66U51235F_1.8V",
     67108864,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0xC2,
     0x25,
     0x3B,
     "MX66U1G45G_1.8V",
     134217728,
     256,
     SPIMemChipVendorMACRONIX,
     SPIMemChipWriteModePage},
    {0x20, 0xBA, 0x16, "N25Q032A", 4194304, 256, SPIMemChipVendorMICRON, SPIMemChipWriteModePage},
    {0x20, 0xBA, 0x17, "N25Q064A", 8388608, 256, SPIMemChipVendorMICRON, SPIMemChipWriteModePage},
    {0x20, 0xBA, 0x19, "N25Q256A13", 33554432, 256, SPIMemChipVendorMICRON, SPIMemChipWriteModePage},
    {0x20, 0xBA, 0x20, "N25Q512A83", 67108864, 256, SPIMemChipVendorMICRON, SPIMemChipWriteModePage},
    {0x2C, 0xCB, 0x19, "N25W256A11", 33554432, 256, SPIMemChipVendorMICRON, SPIMemChipWriteModePage},
    {0x20,
     0xBA,
     0x18,
     "MT25QL128AB",
     16777216,
     256,
     SPIMemChipVendorMICRON,
     SPIMemChipWriteModePage},
    {0x20, 0xBA, 0x19, "MT25QL256A", 33554432, 256, SPIMemChipVendorMICRON, SPIMemChipWriteModePage},
    {0x20, 0xBA, 0x20, "MT25QL512A", 67108864, 256, SPIMemChipVendorMICRON, SPIMemChipWriteModePage},
    {0x20,
     0xBA,
     0x22,
     "MT25QL02GC",
     268435456,
     256,
     SPIMemChipVendorMICRON,
     SPIMemChipWriteModePage},
    {0x20, 0xBB, 0x19, "MT25QU256", 33554432, 256, SPIMemChipVendorMICRON, SPIMemChipWriteModePage},
    {0x20,
     0xBA,
     0x21,
     "N25Q00AA13G",
     134217728,
     256,
     SPIMemChipVendorMICRON,
     SPIMemChipWriteModePage},
    {0x37, 0x30, 0x10, "MS25X512", 65536, 256, SPIMemChipVendorMSHINE, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x11, "MS25X10", 131072, 256, SPIMemChipVendorMSHINE, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x12, "MS25X20", 262144, 256, SPIMemChipVendorMSHINE, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x13, "MS25X40", 524288, 256, SPIMemChipVendorMSHINE, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x14, "MS25X80", 1048576, 256, SPIMemChipVendorMSHINE, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x15, "MS25X16", 2097152, 256, SPIMemChipVendorMSHINE, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x16, "MS25X32", 4194304, 256, SPIMemChipVendorMSHINE, SPIMemChipWriteModePage},
    {0xD5, 0x30, 0x11, "N25S10", 131072, 256, SPIMemChipVendorNANTRONICS, SPIMemChipWriteModePage},
    {0xD5, 0x30, 0x12, "N25S20", 262144, 256, SPIMemChipVendorNANTRONICS, SPIMemChipWriteModePage},
    {0xD5, 0x30, 0x13, "N25S40", 524288, 256, SPIMemChipVendorNANTRONICS, SPIMemChipWriteModePage},
    {0xD5, 0x30, 0x15, "N25S16", 2097152, 256, SPIMemChipVendorNANTRONICS, SPIMemChipWriteModePage},
    {0xD5, 0x30, 0x16, "N25S32", 4194304, 256, SPIMemChipVendorNANTRONICS, SPIMemChipWriteModePage},
    {0xD5, 0x30, 0x14, "N25S80", 1048576, 256, SPIMemChipVendorNANTRONICS, SPIMemChipWriteModePage},
    {0x9D, 0x7F, 0x7C, "NX25P10", 131072, 256, SPIMemChipVendorNEXFLASH, SPIMemChipWriteModePage},
    {0xEF, 0x20, 0x15, "NX25P16", 2097152, 256, SPIMemChipVendorNEXFLASH, SPIMemChipWriteModePage},
    {0x9D, 0x7F, 0x7D, "NX25P20", 262144, 256, SPIMemChipVendorNEXFLASH, SPIMemChipWriteModePage},
    {0xEF, 0x20, 0x16, "NX25P32", 4194304, 256, SPIMemChipVendorNEXFLASH, SPIMemChipWriteModePage},
    {0x9D, 0x7F, 0x7E, "NX25P40", 524288, 256, SPIMemChipVendorNEXFLASH, SPIMemChipWriteModePage},
    {0x9D, 0x7F, 0x13, "NX25P80", 1048576, 256, SPIMemChipVendorNEXFLASH, SPIMemChipWriteModePage},
    {0x20, 0x40, 0x15, "M45PE16", 2097152, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x10, "M25P05", 65536, 128, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x10, "M25P05A", 65536, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x11, "M25P10", 131072, 128, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x11, "M25P10A", 131072, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x12, "M25P20", 262144, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x13, "M25P40", 524288, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x14, "M25P80", 1048576, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x15, "M25P16", 2097152, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x16, "M25P32", 4194304, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x17, "M25P64", 8388608, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20,
     0x20,
     0x18,
     "M25P128_ST25P28V6G",
     16777216,
     256,
     SPIMemChipVendorNUMONYX,
     SPIMemChipWriteModePage},
    {0x20, 0x80, 0x11, "M25PE10", 131072, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x80, 0x15, "M25PE16", 2097152, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x80, 0x12, "M25PE20", 262144, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x80, 0x13, "M25PE40", 524288, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0x20, 0x80, 0x14, "M25PE80", 1048576, 256, SPIMemChipVendorNUMONYX, SPIMemChipWriteModePage},
    {0xBF, 0x43, 0x00, "PCT25LF020A", 262144, 256, SPIMemChipVendorPCT, SPIMemChipWriteModePage},
    {0xBF, 0x49, 0x00, "PCT25VF010A", 131072, 256, SPIMemChipVendorPCT, SPIMemChipWriteModePage},
    {0xBF, 0x25, 0x41, "PCT25VF016B", 2097152, 256, SPIMemChipVendorPCT, SPIMemChipWriteModePage},
    {0xBF, 0x43, 0x00, "PCT25VF020A", 262144, 256, SPIMemChipVendorPCT, SPIMemChipWriteModePage},
    {0xBF, 0x25, 0x4A, "PCT25VF032B", 4194304, 256, SPIMemChipVendorPCT, SPIMemChipWriteModePage},
    {0xBF, 0x44, 0x00, "PCT25VF040A", 524288, 256, SPIMemChipVendorPCT, SPIMemChipWriteModePage},
    {0xBF, 0x25, 0x8D, "PCT25VF040B", 524288, 256, SPIMemChipVendorPCT, SPIMemChipWriteModePage},
    {0xBF, 0x25, 0x8E, "PCT25VF080B", 1048576, 256, SPIMemChipVendorPCT, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x10, "S25FL001D", 131072, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x11, "S25FL002D", 262144, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x12, "S25FL004A", 524288, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x12, "S25FL004D", 524288, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x13, "S25FL004K", 524288, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x13, "S25FL008A", 1048576, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x13, "S25FL008D", 1048576, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x14, "S25FL008K", 1048576, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x14, "S25FL016A", 2097152, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x15, "S25FL016K", 2097152, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x15, "S25FL032A", 4194304, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x16, "S25FL032K", 4194304, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x15, "S25FL032P", 4194304, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x12, "S25FL040A", 524288, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01,
     0x02,
     0x26,
     "S25FL040A_BOT",
     524288,
     256,
     SPIMemChipVendorSPANSION,
     SPIMemChipWriteModePage},
    {0x01,
     0x02,
     0x25,
     "S25FL040A_TOP",
     524288,
     256,
     SPIMemChipVendorSPANSION,
     SPIMemChipWriteModePage},
    {0x01, 0x02, 0x16, "S25FL064A", 8388608, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x17, "S25FL064K", 8388608, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x02, 0x16, "S25FL064P", 8388608, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x40, 0x15, "S25FL116K", 2097152, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0xEF,
     0x40,
     0x18,
     "S25FL128K",
     16777216,
     256,
     SPIMemChipVendorSPANSION,
     SPIMemChipWriteModePage},
    {0x01,
     0x20,
     0x18,
     "S25FL128P",
     16777216,
     256,
     SPIMemChipVendorSPANSION,
     SPIMemChipWriteModePage},
    {0x01,
     0x20,
     0x18,
     "S25FL128S",
     16777216,
     256,
     SPIMemChipVendorSPANSION,
     SPIMemChipWriteModePage},
    {0x01, 0x40, 0x16, "S25FL132K", 4194304, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01, 0x40, 0x17, "S25FL164K", 8388608, 256, SPIMemChipVendorSPANSION, SPIMemChipWriteModePage},
    {0x01,
     0x02,
     0x19,
     "S25FL256S",
     33554432,
     256,
     SPIMemChipVendorSPANSION,
     SPIMemChipWriteModePage},
    {0xBF, 0x25, 0x41, "SST25VF016B", 2097152, 1, SPIMemChipVendorSST, SPIMemChipWriteModeAAIWord},
    {0xBF, 0x25, 0x8C, "SST25VF020B", 262144, 1, SPIMemChipVendorSST, SPIMemChipWriteModeAAIWord},
    {0xBF, 0x25, 0x4A, "SST25VF032B", 4194304, 1, SPIMemChipVendorSST, SPIMemChipWriteModeAAIWord},
    {0xBF, 0x25, 0x4B, "SST25VF064C", 8388608, 256, SPIMemChipVendorSST, SPIMemChipWriteModePage},
    {0xBF, 0x25, 0x8D, "SST25VF040B", 524288, 1, SPIMemChipVendorSST, SPIMemChipWriteModeAAIWord},
    {0xBF, 0x25, 0x8E, "SST25VF080B", 1048576, 1, SPIMemChipVendorSST, SPIMemChipWriteModeAAIWord},
    {0x20, 0x71, 0x15, "M25PX16", 2097152, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x71, 0x16, "M25PX32", 4194304, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x71, 0x17, "M25PX64", 8388608, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x71, 0x14, "M25PX80", 1048576, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x10, "ST25P05", 65536, 128, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x10, "ST25P05A", 65536, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x11, "ST25P10", 131072, 128, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x11, "ST25P10A", 131072, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x15, "ST25P16", 2097152, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x12, "ST25P20", 262144, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x16, "ST25P32", 4194304, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x13, "ST25P40", 524288, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x17, "ST25P64", 8388608, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x14, "ST25P80", 1048576, 256, SPIMemChipVendorST, SPIMemChipWriteModePage},
    {0xEF, 0x10, 0x00, "W25P10", 131072, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x20, 0x15, "W25P16", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x11, 0x00, "W25P20", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x20, 0x16, "W25P32", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x12, 0x00, "W25P40", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x20, 0x17, "W25P64", 8388608, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x20, 0x14, "W25P80", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x60,
     0x11,
     "W25Q10EW_1.8V",
     131072,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x18, "W25Q128BV", 16777216, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x18, "W25Q128FV", 16777216, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x70, 0x18, "W25Q128JV", 16777216, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x19, "W25Q256FV", 33554432, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x19, "W25Q256JV", 33554432, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x70, 0x19, "W25Q256JV", 33554432, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x60,
     0x18,
     "W25Q128FW_1.8V",
     16777216,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x15, "W25Q16", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x15, "W25Q16BV", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x15, "W25Q16CL", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x15, "W25Q16CV", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x15, "W25Q16DV", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x60,
     0x15,
     "W25Q16FW_1.8V",
     2097152,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x15, "W25Q16V", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x12, "W25Q20CL", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x60,
     0x12,
     "W25Q20EW_1.8V",
     262144,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x16, "W25Q32", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x16, "W25Q32BV", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x16, "W25Q32FV", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x60,
     0x16,
     "W25Q32FW_1.8V",
     4194304,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x16, "W25Q32V", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x13, "W25Q40BL", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x13, "W25Q40BV", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x13, "W25Q40CL", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x60,
     0x13,
     "W25Q40EW_1.8V",
     524288,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x17, "W25Q64BV", 8388608, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x17, "W25Q64CV", 8388608, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x17, "W25Q64FV", 8388608, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x17, "W25Q64JV", 8388608, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x60,
     0x17,
     "W25Q64FW_1.8V",
     8388608,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x14, "W25Q80BL", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x14, "W25Q80BV", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x50,
     0x14,
     "W25Q80BW_1.8V",
     1048576,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x14, "W25Q80DV", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF,
     0x60,
     0x14,
     "W25Q80EW_1.8V",
     1048576,
     256,
     SPIMemChipVendorWINBOND,
     SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x10, "W25X05", 65536, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x10, "W25X05CL", 65536, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x11, "W25X10AV", 131072, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x11, "W25X10BL", 131072, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x11, "W25X10BV", 131072, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x11, "W25X10CL", 131072, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x11, "W25X10L", 131072, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x11, "W25X10V", 131072, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x15, "W25X16", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x15, "W25X16AL", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x15, "W25X16AV", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x15, "W25X16BV", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x15, "W25X16V", 2097152, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x12, "W25X20AL", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x12, "W25X20AV", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x12, "W25X20BL", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x12, "W25X20BV", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x12, "W25X20CL", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x12, "W25X20L", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x12, "W25X20V", 262144, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x16, "W25X32", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x16, "W25X32AV", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x16, "W25X32BV", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x16, "W25X32V", 4194304, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x13, "W25X40AL", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x13, "W25X40AV", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x13, "W25X40BL", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x13, "W25X40BV", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x13, "W25X40CL", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x13, "W25X40L", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x13, "W25X40V", 524288, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x17, "W25X64", 8388608, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x17, "W25X64BV", 8388608, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x17, "W25X64V", 8388608, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x14, "W25X80AL", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x14, "W25X80AV", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x14, "W25X80BV", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x14, "W25X80L", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x30, 0x14, "W25X80V", 1048576, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x71, 0x19, "W25M512JV", 67108864, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0xEF, 0x40, 0x19, "W25R256JV", 33554432, 256, SPIMemChipVendorWINBOND, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x10, "TS25L512A", 65536, 256, SPIMemChipVendorZEMPRO, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x11, "TS25L010A", 131072, 256, SPIMemChipVendorZEMPRO, SPIMemChipWriteModePage},
    {0x37, 0x30, 0x12, "TS25L020A", 262144, 256, SPIMemChipVendorZEMPRO, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x15, "TS25L16AP", 2097152, 256, SPIMemChipVendorZEMPRO, SPIMemChipWriteModePage},
    {0x20, 0x20, 0x15, "TS25L16BP", 2097152, 256, SPIMemChipVendorZEMPRO, SPIMemChipWriteModePage},
    {0x37, 0x20, 0x15, "TS25L16P", 2097152, 256, SPIMemChipVendorZEMPRO, SPIMemChipWriteModePage},
    {0x5E, 0x40, 0x15, "ZB25D16", 2097152, 256, SPIMemChipVendorZbit, SPIMemChipWriteModePage},
    {0xE0, 0x40, 0x13, "BG25Q40A", 524288, 256, SPIMemChipVendorBerg_Micro, SPIMemChipWriteModePage},
    {0xE0,
     0x40,
     0x14,
     "BG25Q80A",
     1048576,
     256,
     SPIMemChipVendorBerg_Micro,
     SPIMemChipWriteModePage},
    {0xE0,
     0x40,
     0x15,
     "BG25Q16A",
     2097152,
     256,
     SPIMemChipVendorBerg_Micro,
     SPIMemChipWriteModePage},
    {0xE0,
     0x40,
     0x16,
     "BG25Q32A",
     4194304,
     256,
     SPIMemChipVendorBerg_Micro,
     SPIMemChipWriteModePage},
    {0x1F, 0x23, 0x00, "AT45DB021D", 270336, 264, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x24, 0x00, "AT45DB041D", 540672, 264, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x26, 0x00, "AT45DB161D", 2162688, 528, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x27, 0x01, "AT45DB321D", 4325376, 528, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x43, 0x00, "AT25DF021", 262144, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x44, 0x00, "AT25DF041", 524288, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x44, 0x00, "AT25DF041A", 524288, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x84, 0x00, "AT25SF041", 524288, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x45, 0x00, "AT25DF081", 1048576, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x45, 0x00, "AT25DF081A", 1048576, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x46, 0x00, "AT25DF161", 2097152, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x47, 0x00, "AT25DF321", 4194304, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x47, 0x00, "AT25DF321A", 4194304, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x48, 0x00, "AT25DF641", 8388608, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x65, 0x00, "AT25F512B", 65536, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x45, 0x00, "AT26DF081", 1048576, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x45, 0x00, "AT26DF081A", 1048576, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x46, 0x00, "AT26DF161", 2097152, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x46, 0x00, "AT26DF161A", 2097152, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x47, 0x00, "AT26DF321", 4194304, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x47, 0x00, "AT26DF321A", 4194304, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0x1F, 0x04, 0x00, "AT26F004", 524288, 256, SPIMemChipVendorATMEL, SPIMemChipWriteModePage},
    {0xE0,
     0x60,
     0x18,
     "ACE25A128G_1.8V",
     16777216,
     256,
     SPIMemChipVendorACE,
     SPIMemChipWriteModePage},
    {0x9B, 0x32, 0x16, "ATO25Q32", 4194304, 256, SPIMemChipVendorATO, SPIMemChipWriteModePage},
    {0x54, 0x40, 0x17, "DQ25Q64A", 8388608, 256, SPIMemChipVendorDOUQI, SPIMemChipWriteModePage},
    {0x0E, 0x40, 0x15, "FT25H16", 2097152, 256, SPIMemChipVendorFremont, SPIMemChipWriteModePage},
    {0xA1, 0x40, 0x13, "FM25Q04A", 524288, 256, SPIMemChipVendorFudan, SPIMemChipWriteModePage},
    {0xA1, 0x40, 0x16, "FM25Q32", 4194304, 256, SPIMemChipVendorFudan, SPIMemChipWriteModePage},
    {0xE0, 0x40, 0x14, "GT25Q80A", 1048576, 256, SPIMemChipVendorGenitop, SPIMemChipWriteModePage},
    {0xE0, 0x40, 0x13, "PN25F04A", 524288, 256, SPIMemChipVendorParagon, SPIMemChipWriteModePage},
    {0x0B, 0x40, 0x18, "XT25F128B", 16777216, 256, SPIMemChipVendorXTX, SPIMemChipWriteModePage},
    {0x20, 0x70, 0x17, "XM25QH64C", 8388608, 256, SPIMemChipVendorXMC, SPIMemChipWriteModePage},
    {0x20, 0x70, 0x18, "XM25QH128A", 16777216, 256, SPIMemChipVendorXMC, SPIMemChipWriteModePage}};
